'''

@date 2024年11月20日
@author liandyao
抖音号: liandyao
'''
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.action_chains import ActionChains
import time
import re


# 初始化 WebDriver
driver = webdriver.Chrome()  # 如果没有安装 chromedriver，需提前安装并放入环境变量里
driver.get("http://www.vopox.net/xinggan")  # 打开目标网站
time.sleep(5)  # 等待页面加载

# 滚动两次到底部，每次等待 5 秒
for _ in range(1):
    driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")  # 滚动到底部
    time.sleep(5)  # 等待新内容加载


# 定位所有符合条件的 article 并直接查找 a 标签
try:
    articles = driver.find_elements(By.CSS_SELECTOR, "div.apc-post-item.apc_layout_1 article")  # 定位所有 article 元素
    urls = [

    ]

    for article in articles:
        # 在 article 中找到 <a> 标签
        a_tags = article.find_elements(By.TAG_NAME, "a")
        a_tag = a_tags[0]  # 取第一个 <a> 标签
        style_attr = a_tag.get_attribute("style")
        item={}
        if style_attr and "background-image" in style_attr:
            # 匹配 URL 地址
            match = re.search(r'url\((.*?)\)', style_attr)
            if match:
                url = match.group(1).replace('"','')
                item['url']=url
                title = article.find_element(By.CSS_SELECTOR, "grid-title gdz").text
                item[title] = title
        urls.append(item)

    # 打印收集到的 URLs
    print("Found URLs:")
    for url in urls:
        print(url)
finally:
    driver.quit()  # 关闭 WebDriver